Communication in Microkernel-Based Operating Systems
نویسنده
چکیده
Communication in microkernel-based systems is much more frequent than system calls known from monolithic kernels. This can be attributed to the placement of system services into their own protection domains. Communication has to be fast to avoid unnecessary overhead. Also, communication channels in microkernel-based systems are used for more than just remote procedure calls. In distributed systems, which also have a componentized design, it is state of the art to use tools to generate stubs for the communication between components. The communication interfaces of components are described in an interface definition language (IDL). In contrast to distributed systems, components of a microkernel-based system run on the same architecture and message delivery is guaranteed. In this Thesis, I explore the different kinds of communication, which can be used in microkernel-based systems, as well as their possible representation in IDL. Specifically, I introduce the syntax to describe kernel objects in IDL. I discuss the complexity of IDL compilers and its relation to the complexity of the IDL. Furthermore, I evaluate the performance of the communication stubs generated by different IDL compilers and discuss techniques to minimize performance overhead in generated stubs. I validated these techniques by implementing the Drops IDL Compiler – Dice. Finally, this Thesis presents a mechanism to measure the frequency and performance of invocations of generated communication code. I used this technique to conduct measurements in highly complex systems and introducing the least possible overhead.
منابع مشابه
The increasing irrelevance of IPC Performance for Micro-kernel-Based Operating Systems
IPC is the glue with which traditional operating system services such as networking, and ling, are provided in microkernel-based operating systems. Because applications rely heavily on cross-address space communication, IPC performance is often viewed as being the \Achilles heel" of a microkernel-based operating system. In this paper I discuss four reasons why IPC performance is becoming increa...
متن کاملInterprocess Communication in the T4 System
In the past several years, the research of operating systems has shifted from the concept of isolated machines to the notion of a distributed operating system [7][9][10]. At the same time, single-machine operating systems started to use microkernel architecture [1]. This paper describes the T4 project an attempt to design and to implement a microkernel, suitable for both single-machine and dist...
متن کاملStay Strong, Stay Safe – Enhancing Reliability of a Secure Operating System
Current research in operating systems focuses either on security or on reliability. However, modern embedded platforms demand solutions that suit both kinds of requirements. In this paper, we present L4ReAnimator, a framework that allows restarting crashed applications and reestablishing lost communication channels on top of the Fiasco.OC microkernel. It therefore effectively combines the alrea...
متن کاملThe Horus System
Although group communication systems have become popular, software support for such computing remains complex and poorly integrated with modern operating systems structures. We describe the Horus system , which brings microkernel design techniques to bear on this problem. Horus has proved lightweight and fast, is well suited for embedding into operating systems like Mach and Chorus, and is exib...
متن کاملIs the Microkernel Technology well suited for the Support of Object-Oriented Operating Systems: the Guide Experience
This paper describes our experience in the implementation of the Guide distributed objectoriented system on top of the Mach 3.0 microkernel. While many experimental distributed object-oriented environments have been implemented on Unix and much less on a bare machine, the emerging microkernel technology seems to provide a well suited trade-off between these two approaches. Microkernels provide ...
متن کامل